#pragma once

#include "ISurport.h"

NAMESPACE_UI_BEGIN

class UI_API CSolidSampler : public ISampler
{
public:
	CSolidSampler();
	CSolidSampler(uint_32 uiColor);
	~CSolidSampler();

	SamplerTyle GetSampleType() const;
	uint_32 DoSample();
	uint_32 DoSample(int_32 iX, int_32 iY);

	uint_32 Color;
};

class UI_API CSolidBrush : public IBrush
{
public:
	CSolidBrush(uint_32 uiColor);
	~CSolidBrush();
	SamplerTyle GetSampleType() const;
	uint_32 DoSample();
	uint_32 DoSample(int_32 iX, int_32 iY);
public:
	void SetColor(uint_32 uiColor);
protected:
	uint_32 m_uiColor;
};

class UI_API CPen : public IPen
{
public:
	CPen(uint_32 uiColor, float_32 fWidth);
	~CPen();
	SamplerTyle GetSampleType() const;
	uint_32 DoSample();
	uint_32 DoSample(int_32 iX, int_32 iY);
public:
	void SetColor(uint_32 uiColor);
	float_32 GetWidth() const;
protected:
	uint_32 m_uiColor;
	float_32 m_fWidth;
};

NAMESPACE_UI_END
